﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using GameLibrary.Tile;
using GameLibrary.Settlement;
using GameLibrary.Unit;

namespace UserInterface.Model
{
    [Serializable]
    public struct GameMapElement
    {
        private TileType tileType;
        public TileType Tile { get { return tileType; } }
        private SettlementInfo settlementInfo;
        public SettlementInfo Settlement { get { return settlementInfo; } }
        private List<UnitInfo> unitInfos;
        public IEnumerable<UnitInfo> Units { get { return unitInfos; } }

        public GameMapElement(
            TileType tile,
            SettlementInfo settlement,
            IEnumerable<UnitInfo> units)
        {
            tileType = tile;
            settlementInfo = settlement;
            unitInfos = new List<UnitInfo>(units);
        }
    }
}
